package com.hunliji.monitor.dao.model.dataobject;

import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author wu_chen
 * @since 2023-05-10
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("customer_information")
public class CustomerInformationDO implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    private String userId;

    /**
     * 0用户1游客
     */
    private Integer userType;

    /**
     * 留资手机电话
     */
    private String customerPhone;

    /**
     * 原始联系对象类型1商家2管家
     */
    private Integer initConsultType;

    /**
     * 原始联系对象的id（商家id或管家id）
     */
    private Long initConsultId;

    /**
     * 真正联系对象类型1商家2管家
     */
    private Integer finalConsultType;

    /**
     * 真正联系对象id（商家id或管家id）
     */
    private Long finalConsultId;

    /**
     * 推荐客资状态，表示是否被商家接收， 0：待接收 1:已接收 2：拒绝接收
     */
    private Integer receiveStatus;

    /**
     * 客资接收/拒绝时间
     */
    private LocalDateTime receiveStatusChangeAt;

    /**
     * -1待接待 0待处理，1有效，2待再次沟通，3无效，4已邀约，5已到店，6-已成单，7-停止跟进
     */
    private Integer customerStatus;

    /**
     * 上次状态变更时间
     */
    private LocalDateTime customerStatusChangeAt;

    /**
     * 客资类型 0手动录入 1私信 2留资 3电话 4推荐
     */
    private Integer kind;

    /**
     * 业务来源纬度 1-婚礼纪私信,2-预约,3-手动录入,4-领取优惠卷,6-婚礼纪活动,7-聚客宝活动,8-外部活动,9-婚礼策划报价,10-旅拍定制服务,11-婚纱摄影报价,12-礼服搭配服务,13-体验店推荐,14-旅拍定制服务,15-门店·直接到店,16-门店·客人转介绍,17-门店·员工转介绍,18-门店·其他,19-婚礼纪·内部leads,20-婚戒首饰报价,21-主动确认关注店铺,22-婚宴酒店商家报价,23-活动直接付费,24-注释为空，一站式备婚中心,25-电话,27-报价,28-司仪档期查询,29-跟妆档期查询,100-批量导入,101-营销获客
     */
    private Integer bizSourceType;

    /**
     * 业务来源实体，枚举值：Message 私信消息（chat.message）,MerchantAppointment 预约（wedding.merchant_appointment）,UserCoupon 领取优惠券（wedding.user_coupon）,WcdActivity 活动（hlj_utils.wcd_activity）,QuoteRecord 老报价（wedding.quote_record）,HotelQuoteMerchant 酒店报价（wedding.hotel_quote_merchant）,UserPlanQuote 婚策报价（wedding.user_plan_quote）,UserPhotoQuote 婚摄报价（wedding.user_photo_quote）,UserTripShootQuote 旅拍报价（wedding.user_trip_shoot_quote）,UserIntentionSchedule 司仪、跟妆查询档期（wedding.user_intention_schedule）
     */
    private String bizSourceEntity;

    /**
     * 业务相关id和biz_source_entity对应
     */
    private String bizSourceId;

    /**
     * 客户端来源
     */
    private String appName;

    /**
     * 设备类型
     */
    private String deviceKind;

    /**
     * 客资是否可被商家查看1可查看0不可查看
     */
    private Integer visible;

    /**
     * 客资预计到店时间
     */
    private LocalDateTime appointTime;

    /**
     * 客资实际到店时间
     */
    private LocalDateTime goTime;

    /**
     * 昵称
     */
    private String nick;

    /**
     * 用户姓名，商家客资页面编辑
     */
    private String userName;

    /**
     * 用户手机号
     */
    private String userPhone;

    /**
     * 用户微信
     */
    private String userWechat;

    /**
     * 性别1男2女 用户或访客表管理
     */
    private Integer gender;

    /**
     * 婚期-用户婚期表
     */
    private LocalDateTime weddingDay;

    /**
     * 成交意愿0未选择1低2一般3高
     */
    private Integer dealWill;

    /**
     * 备注
     */
    private String remark;

    /**
     * 跟进中断原因
     */
    private String suspendReason;

    /**
     * 是否回拨 0：否 1：是
     */
    private Integer callBack;

    /**
     * 最后操作用户id 0系统更新
     */
    private Long updatedOperatorId;

    /**
     * 创建者ID 0 系统创建
     */
    private Long createdOperatorId;

    /**
     * 地区id-店铺信息表
     */
    private Integer shopAreaId;

    private Integer deleted;

    private Date dbCreatedAt;

    private LocalDateTime dbUpdatedAt;

    private Long entityId;

    private String entityType;

    private LocalDateTime lastContactTime;

    /**
     * 是否被风控
     */
    private Integer risk;

    /**
     * 是否向商家号发起（商家号忽略店铺权益过期逻辑）
     */
    private Integer merchantAccount;

    /**
     * 客资可见标记 0 不可见 1非返佣合作城市及行业可见 2广告合作供应商可见
     */
    private Integer flag;

    /**
     * 客资回收状态 0 未回收 1待确认状态下回收 2确认状态下回收
     */
    private Integer recycleStatus;

    /**
     * 备注
     */
    private String demandExtra;

    private Boolean test;


}
